class Config(object):
    # database connect information
    DB_NAME = "dnsmanager"
    DB_USER = "dnsmanager"
    DB_HOST = "127.0.0.1"
    DB_PASSWORD = "12345"
    
    # named information
    NAMED_CONF_INC = "/var/named/chroot/etc/named.conf.inc"
    NAMED_ZONE_DIR = "/var/named/chroot/var/named"
    
    # default zone value
    ZONE_CONTACT_EMAIL = "info.kaygorodov.com"
    ZONE_SERIAL_NUMBER = "2009100523"
    ZONE_REFRESH_TIME = "10800"
    ZONE_RETRY_TIME = "3600"
    ZONE_EXPIRE_TIME = "604800"
    ZONE_MINIMUM_TTL = "86400"
    ZONE_ENABLED = True
    ZONE_FORWARD_LOOKUP = True

    # default record value
    RECORD_CLASS = "A" # NS, A, PTR, CNAME
    RECORD_ENABLED = True

    # message
    MESSAGE = {
        "2": "Command is incorrect",
        "4": "Unknown error",
        "5": "Record successfully deleted",
        "6": "Record successfully modified",
        "7": "Record successfully added",
        "8": "Zone successfully deleted",
        "9": "Zone successfully modified",
        "10": "Zone successfully added",
        "11": "Enter the name of the zone, usage: dnsmanager.py info <name_zone>",
        "12": "Enter the name of the zone, usage: dnsmanager.py [options] change-zone <name_zone>",
        "13": "Zone with the entered name does not exist",
        "14": "Enter the name of the zone, usage: dnsmanager.py remove-zone <name_zone>",
        "15": "Enter the name of the zone, usage: dnsmanager.py [options] add-zone <zone-record>",
        "16": "Specify a value for the option --source-host",
        "17": "Record name is incorrect",
        "18": "Enter the name of the record, usage: dnsmanager.py [options] add <name-record>",
        "19": "Specify a value for the option --zone",
        "20": "Record class is incorrect, please type [NS, A, CNAME, PTR]",
        "21": "Value is incorrect",
        "22": "Specify a value for the option --value",
        "23": "RID is incorrect",
        "24": "Specify a value for the option --rid",     
    }
    
    # help info
    HELP_INFO = """usage: dns-manager.py [options] < info, list, add, sync, remove, change, add-zone, change-zone, remove-zone >

OPTIONS:

STARTUP:
  --help       print this help.
 
ADD:
  --zone=[zone_name]
  --record-class=[record-class]
  --enabled
  --disabled
  --value=[record_value]
  
CHANGE:
  --zone=[zone_name]
  --record-class=[record-class]
  --enabled
  --disabled
  --value=[record_value]
  --name

REMOVE:
  no options

LIST:
  no options

INFO:
  no options
  
SYNC:
  no options

ADD-ZONE:
  --source-host=[domain]      
  --contact-email=[email]
  --reverse-lookup
  --forward-lookup
  --enabled
  --disabled
  --serial-number=[number]
  --refresh-time=[time]
  --retry-time=[time]
  --expire-time=[time]
  --minimum-ttl=[number]
  
CHANGE-ZONE :
  --source-host=[domain]      
  --contact-email=[email]
  --reverse-lookup
  --forward-lookup
  --enabled
  --disabled
  --serial-number=[number]
  --refresh-time=[time]
  --retry-time=[time]
  --expire-time=[time]
  --minimum-ttl=[number]

REMOVE-ZONE:
  no options

EXAMPLES
    ./dnsmanager.py --source-host ns.movie.com add-zone movie.com
    ./dnsmanager.py --disabled change-zone movie.com
    ./dnsmanager.py --source-host ns.ex.com --serial-number 2009100512 add-zone ex.com
    ./dnsmanager.py info ex.com
    ./dnsmanager.py --disabled --zone ex.com --value 123.123.123.123 add domain1.ex.com
    ./dnsmanager.py list
    ./dnsmanager.py --enabled change 1
    ./dnsmanager.py remove 1
    ./dnsmanager.py remove-zone ex.com
    ./dnsmanager.py sync

Mail bug reports and suggestions to <bug-dnsmanager@kaygorodov.com>.
Written by A.Kaygorodov, website (russian-speaking blog) - www.kaygorodov.com, email - <info@kaygorodov.com>.""" 
